@@ -20,11 +20,11 @@ |
||
| 20 | 20 |
</tr> |
| 21 | 21 |
|
| 22 | 22 |
<% @jobs.each do |job| %> |
| 23 |
- <% agent = Agent.find(YAML.load(job.handler).args[0]) %> |
|
| 23 |
+ <% agent = Agent.find_by_id(YAML.load(job.handler).args[0]) %> |
|
| 24 | 24 |
<tr> |
| 25 | 25 |
<td><%= status(job) %></td> |
| 26 |
- <td><%= link_to agent.name, agent_path(agent) %></td> |
|
| 27 |
- <td title='<%= job.created_at %>'><%= time_ago_in_words job.created_at %> ago for <%= agent.user.username %></td> |
|
| 26 |
+ <td><%= agent ? link_to(agent.name, agent_path(agent)) : "(deleted)" %></td> |
|
| 27 |
+ <td title='<%= job.created_at %>'><%= time_ago_in_words job.created_at %> ago <%= agent ? "for #{agent.user.username}" : '' %></td>
|
|
| 28 | 28 |
<td title='<%= job.run_at %>'> |
| 29 | 29 |
<% if !job.failed_at %> |
| 30 | 30 |
<%= relative_distance_of_time_in_words job.run_at %> |
@@ -4,8 +4,15 @@ describe JobsController do |
||
| 4 | 4 |
|
| 5 | 5 |
describe "GET index" do |
| 6 | 6 |
before do |
| 7 |
- Delayed::Job.create! |
|
| 8 |
- Delayed::Job.create! |
|
| 7 |
+ async_handler_yaml = |
|
| 8 |
+ "--- !ruby/object:Delayed::PerformableMethod\nobject: !ruby/class 'Agent'\nmethod_name: :async_check_without_delay\nargs:\n- %d\n" |
|
| 9 |
+ |
|
| 10 |
+ Delayed::Job.create!(handler: async_handler_yaml % [agents(:jane_website_agent).id]) |
|
| 11 |
+ Delayed::Job.create!(handler: async_handler_yaml % [agents(:bob_website_agent).id]) |
|
| 12 |
+ Delayed::Job.create!(handler: async_handler_yaml % [agents(:jane_weather_agent).id]) |
|
| 13 |
+ agents(:jane_website_agent).destroy |
|
| 14 |
+ Delayed::Job.create!(handler: async_handler_yaml % [agents(:bob_weather_agent).id], locked_at: Time.now, locked_by: 'test') |
|
| 15 |
+ |
|
| 9 | 16 |
expect(Delayed::Job.count).to be > 0 |
| 10 | 17 |
end |
| 11 | 18 |
|
@@ -19,7 +26,7 @@ describe JobsController do |
||
| 19 | 26 |
expect(users(:jane)).to be_admin |
| 20 | 27 |
sign_in users(:jane) |
| 21 | 28 |
get :index |
| 22 |
- expect(assigns(:jobs).length).to eq(2) |
|
| 29 |
+ expect(assigns(:jobs).length).to eq(4) |
|
| 23 | 30 |
end |
| 24 | 31 |
end |
| 25 | 32 |
|